Begin["System`"]

CInstall["nvnumber"]

CProc["nvnumber",FactorInteger,SeedRandom,RandomInteger,RandomPrime,NextPrime,IntegerLength,GCD,LCM,ExtendedGCD,ChineseRemainder,PrimeQ,CoprimeQ,Radical]

SetAttributes[CoprimeQ, {Listable, Orderless, Protected}]

CProc["nvnumber",Factorial,Binomial,Fibonacci,Lucas,EulerGamma,Catalan,Log,Log2,Log10,Exp,Cos,Sin,Tan,Sec,Csc,Cot,ArcCos,ArcSin,ArcTan,Cosh,Sinh,Tanh,Sech,Csch,Coth,ArcCosh,ArcSinh,ArcTanh,Gamma,LogGamma,Zeta,Erf,Erfc,Sqrt,Pow,Pi,E,Sign]

SetAttributes[Sign, {Listable, NumericFunction, Protected}]
SetAttributes[ArcCos, {NumericFunction, Protected}]
SetAttributes[ArcCosh, {NumericFunction, Protected}]
SetAttributes[ArcSin, {NumericFunction, Protected}]
SetAttributes[ArcSinh, {NumericFunction, Protected}]
SetAttributes[ArcTan, {NumericFunction, Protected}]
SetAttributes[ArcTanh, {NumericFunction, Protected}]
SetAttributes[Binomial, {NumericFunction, Protected}]
SetAttributes[Catalan, {Constant, Protected}]
SetAttributes[Cos, {NumericFunction, Protected}]
SetAttributes[Cosh, {NumericFunction, Protected}]
SetAttributes[Cot, {NumericFunction, Protected}]
SetAttributes[Coth, {NumericFunction, Protected}]
SetAttributes[Csc, {NumericFunction, Protected}]
SetAttributes[Csch, {NumericFunction, Protected}]
SetAttributes[E, {Constant, Protected}]
SetAttributes[Erf, {NumericFunction, Protected}]
SetAttributes[Erfc, {NumericFunction, Protected}]
SetAttributes[EulerGamma, {Constant, Protected}]
SetAttributes[Exp, {NumericFunction, Protected}]
SetAttributes[Factorial, {NumericFunction, Protected}]
SetAttributes[Fibonacci, {NumericFunction, Protected}]
SetAttributes[Gamma, {NumericFunction, Protected}]
SetAttributes[Log, {NumericFunction, Protected}]
SetAttributes[Log10, {NumericFunction, Protected}]
SetAttributes[Log2, {NumericFunction, Protected}]
SetAttributes[LogGamma, {NumericFunction, Protected}]
SetAttributes[Lucas, {NumericFunction, Protected}]
SetAttributes[Pi, {Constant, Protected}]
SetAttributes[Pow, {NumericFunction, Protected}]
SetAttributes[Sec, {NumericFunction, Protected}]
SetAttributes[Sech, {NumericFunction, Protected}]
SetAttributes[Sin, {NumericFunction, Protected}]
SetAttributes[Sinh, {NumericFunction, Protected}]
SetAttributes[Sqrt, {NumericFunction, Protected}]
SetAttributes[Tan, {NumericFunction, Protected}]
SetAttributes[Tanh, {NumericFunction, Protected}]
SetAttributes[Zeta, {NumericFunction, Protected}]

(* the following function do not have cprocs yet *)
(* SetAttributes[CosIntegral, {NumericFunction, Protected}]
SetAttributes[CoshIntegral, {NumericFunction, Protected}] *)
SetAttributes[EllipticF, {NumericFunction, Protected}]
SetAttributes[Erfi, {NumericFunction, Protected}]
SetAttributes[ExpIntegralE, {NumericFunction, Protected}]
SetAttributes[ExpIntegralEi, {NumericFunction, Protected}]
(* SetAttributes[FresnelS, {NumericFunction, Protected}]
SetAttributes[FresnelC, {NumericFunction, Protected}] *)
SetAttributes[LogIntegral, {NumericFunction, Protected}]
SetAttributes[PolyGamma, {NumericFunction, Protected}]
SetAttributes[PolyLog, {NumericFunction, Protected}]
SetAttributes[ProductLog, {NumericFunction, Protected}]
(* SetAttributes[SinIntegral, {NumericFunction, Protected}]
SetAttributes[SinhIntegral, {NumericFunction, Protected}] *)

End[]